/**
 * 存储相关操作的对象
 */
export default {
	/**
	 * 设置键值对到本地存储
	 * @param {string} name - 键名
	 * @param {any} value - 要存储的值
	 */
	set(name, value) {
		uni.setStorageSync(name, value);
	},
	/**
	 * 将对象转换为 JSON 字符串后设置到本地存储
	 * @param {string} name - 键名
	 * @param {any} value - 要存储的对象
	 */
	setJson(name, value) {
		uni.setStorageSync(name, JSON.stringify(value));
	},
	/**
	 * 获取指定键名对应的值从本地存储
	 * @param {string} name - 键名
	 * @return {any} 获取到的值
	 */
	get(name) {
		return uni.getStorageSync(name);
	},
	/**
	 * 获取指定键名对应解析后的 JSON 对象值从本地存储
	 * @param {string} name - 键名
	 * @return {any} 解析后的对象值或 null
	 */
	getJson(name) {
		const content = uni.getStorageSync(name);
		if (!content) {
			return null;
		}
		return JSON.parse(content);
	},
	/**
	 * 移除指定键名的本地存储项
	 * @param {string} name - 键名
	 */
	remove(name) {
		uni.removeStorageSync(name);
	},
	/**
	 * 清空本地存储
	 */
	clear() {
		uni.clearStorageSync();
	}
};